Meta-language Support for Type-Safe Access to External Resources

نویسندگان

  • Mark Hills
  • Paul Klint
  • Jurgen J. Vinju
چکیده

Meta-programming applications often require access to heterogeneous sources of information, often from different technological spaces (grammars, models, ontologies, databases), that have specialized ways of defining their respective data schemas. Without direct language support, obtaining typed access to this external, potentially changing, information is a tedious and error-prone engineering task. The Rascal meta-programming language aims to support the import and manipulation of all of these kinds of data in a type-safe manner. The goal is to lower the engineering effort to build new meta programs that combine information about software in unforeseen ways. In this paper we describe built-in language support, so called resources, for incorporating external sources of data and their corresponding data-types while maintaining type safety. We demonstrate the applicability of Rascal resources by example, showing resources for RSF files, CSV files, JDBC-accessible SQL databases, and SDF2 grammars. For RSF and CSV files this requires a type inference step, allowing the data in the files to be loaded in a type-safe manner without requiring the type to be declared in advance. For SQL and SDF2 a direct translation from their respective schema languages into Rascal is instead constructed, providing a faithful translation of the declared types or sorts into equivalent types in the Rascal type system. An overview of related work and a discussion conclude the paper.

برای دانلود رایگان متن کامل این مقاله و بیش از 32 میلیون مقاله دیگر ابتدا ثبت نام کنید

ثبت نام

اگر عضو سایت هستید لطفا وارد حساب کاربری خود شوید

منابع مشابه

A Meta-analysis of the factors affecting information seeking behavior in Iran and the world

Purpose: The aim of this study is to identify the components affecting information seeking behavior and to measure their impact from Persian and English articles in this field. In addition, the moderating variables affecting information seeking behavior were identified and their effect size was calculated. Method: The method of this study is meta-analysis. The research population included all ...

متن کامل

A Linear Type System for Multicore Programming∗

In this day and age of multicore architectures, programming language support is in urgent need for constructing programs that can take great advantage of machines with multiple cores. We present in this paper an approach to safe multicore programming in ATS, a recently developed functional programming language that supports both linear and dependent types. In particular, we formalize a type sys...

متن کامل

Dynamic Access Control in a Concurrent Object Calculus

We develop a variant of Gordon and Hankin’s concurrent object calculus with support for flexible access control on methods. We investigate safe administration and access of shared resources in the resulting language. Specifically, we show a static type system that guarantees safe manipulation of objects with respect to dynamic specifications, where such specifications are enforced via access ch...

متن کامل

On Meta Programming and Code Generation in F # ∗

Meta programming is used to write programs that manipulate other programs. In this paper, we are interested in the use of meta programming for code generation generally and in syntactically correct, type safe methods for manipulating code fragments specifically. We require a strictly typed programming language with selfhosting meta programming support. Some techniques for type safe code generat...

متن کامل

Creating a Safe, High-Quality Healthcare System for All: Meeting the Needs of Limited English Proficient Populations; Comment on “Patient Safety and Healthcare Quality: The Case for Language Access”

The article by Cheri Wilson, “Patient Safety and Healthcare Quality: The Case for Language Access”, highlights 
the challenges of providing Culturally and Linguistically Appropriate Services (CLAS) to patients with 
Limited English Proficiency (LEP). As the US pursues high-value, high-performance healthcare, our ability 
to meet the needs of our most vulnerable will determine whether we succeed...

متن کامل

ذخیره در منابع من


  با ذخیره ی این منبع در منابع من، دسترسی به آن را برای استفاده های بعدی آسان تر کنید

عنوان ژورنال:

دوره   شماره 

صفحات  -

تاریخ انتشار 2012